package com.spzx.user.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.spzx.product.api.domain.ProductSku;
import com.spzx.user.api.domain.UpdateUserLogin;
import com.spzx.user.api.domain.UserInfo;

import java.util.List;

/**
 * 会员Service接口
 *
 * @author atguigu
 * @date 2024-11-02
 */
public interface IUserInfoService extends IService<UserInfo>
{

    /**
     * 查询会员列表
     *
     * @param userInfo 会员
     * @return 会员集合
     */
    public List<UserInfo> selectUserInfoList(UserInfo userInfo);

    void register(UserInfo userInfo);

    /**
     * 根据用户名查询用户信息
     * @param username
     * @return
     */
    UserInfo getUserInfoByUsername(String username);

    /**
     * 根据用户id更新用户最后登录的Ip地址和时间
     * @param updateUserLogin
     * @return
     */
    Boolean updateUserLogin(UpdateUserLogin updateUserLogin);

    /**
     * 判断是否收藏
     * @param skuId
     * @return
     */
    Boolean isCollect(Long skuId);

    /**
     * 根据skuId来收藏
     * @param skuId
     * @return
     */
    Boolean collect(Long skuId);

    Boolean cancelCollect(Long skuId);

    List<ProductSku> getUserBrowseHistoryList();
}
